 /* Copyright 2018 JDCLOUD.COM

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http:#www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.





Contact: 

NOTE: This class is auto generated by the jdcloud code generator program.
*/


#import <Foundation/Foundation.h>
#import <JDCloudOCSDKVod/VodModel.h>

@implementation UploadCallbackRequestObject
-(id) initWithStatus:(NSNumber*) status
      name:(NSString*)name
      format:(NSString*)format
      size:(NSNumber*)size
      categoryId:(NSNumber*)categoryId
      coderateId:(NSString*)coderateId
      logoId:(NSString*)logoId
      url:(NSString*)url
      endpoint:(NSString*)endpoint
      bucket:(NSString*)bucket { 
     self.status = status;               
     self.name = name;               
     self.format = format;               
     self.size = size;               
     self.categoryId = categoryId;               
     self.coderateId = coderateId;               
     self.logoId = logoId;               
     self.url = url;               
     self.endpoint = endpoint;               
     self.bucket = bucket;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self status])
    {
        [result setValue:[self status] forKey:@"status"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self format])
    {
        [result setValue:[self format] forKey:@"format"];
    }
    if([self size])
    {
        [result setValue:[self size] forKey:@"size"];
    }
    if([self categoryId])
    {
        [result setValue:[self categoryId] forKey:@"categoryId"];
    }
    if([self coderateId])
    {
        [result setValue:[self coderateId] forKey:@"coderateId"];
    }
    if([self logoId])
    {
        [result setValue:[self logoId] forKey:@"logoId"];
    }
    if([self url])
    {
        [result setValue:[self url] forKey:@"url"];
    }
    if([self endpoint])
    {
        [result setValue:[self endpoint] forKey:@"endpoint"];
    }
    if([self bucket])
    {
        [result setValue:[self bucket] forKey:@"bucket"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.status = [dictionary objectForKey:@"status"];
    self.name = [dictionary objectForKey:@"name"];
    self.format = [dictionary objectForKey:@"format"];
    self.size = [dictionary objectForKey:@"size"];
    self.categoryId = [dictionary objectForKey:@"categoryId"];
    self.coderateId = [dictionary objectForKey:@"coderateId"];
    self.logoId = [dictionary objectForKey:@"logoId"];
    self.url = [dictionary objectForKey:@"url"];
    self.endpoint = [dictionary objectForKey:@"endpoint"];
    self.bucket = [dictionary objectForKey:@"bucket"];
    return self;
}
 @end
@implementation UploadCallbackResultObject
-(id) initWithMid:(NSString*) mid { 
     self.mid = mid;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self mid])
    {
        [result setValue:[self mid] forKey:@"mid"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.mid = [dictionary objectForKey:@"mid"];
    return self;
}
 @end
@implementation SubmitQualityDetectionJobRequestObject
-(id) initWithMediaId:(NSString*) mediaId
      templateIds:(NSArray<NSNumber*>*)templateIds { 
     self.mediaId = mediaId;               
     self.templateIds = templateIds;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self mediaId])
    {
        [result setValue:[self mediaId] forKey:@"mediaId"];
    }
    if([self templateIds])
    {
        [result setValue:[self templateIds] forKey:@"templateIds"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.mediaId = [dictionary objectForKey:@"mediaId"];
    self.templateIds = [dictionary objectForKey:@"templateIds"];
    return self;
}
 @end
@implementation NotifyConfig
-(id) initWithNotifyId:(NSNumber*) notifyId
      type:(NSNumber*)type
      notifyFlag:(NSNumber*)notifyFlag
      notifyUrl:(NSString*)notifyUrl
      callType:(NSString*)callType
      notifyKey:(NSString*)notifyKey
      createTime:(NSString*)createTime
      updateTime:(NSString*)updateTime { 
     self.notifyId = notifyId;               
     self.type = type;               
     self.notifyFlag = notifyFlag;               
     self.notifyUrl = notifyUrl;               
     self.callType = callType;               
     self.notifyKey = notifyKey;               
     self.createTime = createTime;               
     self.updateTime = updateTime;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self notifyId])
    {
        [result setValue:[self notifyId] forKey:@"notifyId"];
    }
    if([self type])
    {
        [result setValue:[self type] forKey:@"type"];
    }
    if([self notifyFlag])
    {
        [result setValue:[self notifyFlag] forKey:@"notifyFlag"];
    }
    if([self notifyUrl])
    {
        [result setValue:[self notifyUrl] forKey:@"notifyUrl"];
    }
    if([self callType])
    {
        [result setValue:[self callType] forKey:@"callType"];
    }
    if([self notifyKey])
    {
        [result setValue:[self notifyKey] forKey:@"notifyKey"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.notifyId = [dictionary objectForKey:@"notifyId"];
    self.type = [dictionary objectForKey:@"type"];
    self.notifyFlag = [dictionary objectForKey:@"notifyFlag"];
    self.notifyUrl = [dictionary objectForKey:@"notifyUrl"];
    self.callType = [dictionary objectForKey:@"callType"];
    self.notifyKey = [dictionary objectForKey:@"notifyKey"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
}
 @end
@implementation CreateDomainRequestObject
-(id) initWithName:(NSString*) name { 
     self.name = name;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.name = [dictionary objectForKey:@"name"];
    return self;
}
 @end
@implementation DeleteHeaderRequestObject
-(id) initWithHeaderName:(NSString*) headerName
      headerType:(NSString*)headerType { 
     self.headerName = headerName;               
     self.headerType = headerType;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self headerName])
    {
        [result setValue:[self headerName] forKey:@"headerName"];
    }
    if([self headerType])
    {
        [result setValue:[self headerType] forKey:@"headerType"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.headerName = [dictionary objectForKey:@"headerName"];
    self.headerType = [dictionary objectForKey:@"headerType"];
    return self;
}
 @end
@implementation VerifyDomainResultObject
-(id) initWithDomainName:(NSString*) domainName
      verified:(NSNumber*)verified
      icpInfo:(NSString*)icpInfo { 
     self.domainName = domainName;               
     self.verified = verified;               
     self.icpInfo = icpInfo;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self domainName])
    {
        [result setValue:[self domainName] forKey:@"domainName"];
    }
    if([self verified])
    {
        [result setValue:[self verified] forKey:@"verified"];
    }
    if([self icpInfo])
    {
        [result setValue:[self icpInfo] forKey:@"icpInfo"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.domainName = [dictionary objectForKey:@"domainName"];
    self.verified = [dictionary objectForKey:@"verified"];
    self.icpInfo = [dictionary objectForKey:@"icpInfo"];
    return self;
}
 @end
@implementation IPRuleConfigObject
-(id) initWithIps:(NSArray<NSString*>*) ips { 
     self.ips = ips;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self ips])
    {
        [result setValue:[self ips] forKey:@"ips"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.ips = [dictionary objectForKey:@"ips"];
    return self;
}
 @end
@implementation RefererRuleConfigObject
-(id) initWithStrategy:(NSString*) strategy
      domains:(NSArray<NSString*>*)domains
      allowBlank:(NSNumber*)allowBlank { 
     self.strategy = strategy;               
     self.domains = domains;               
     self.allowBlank = allowBlank;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self strategy])
    {
        [result setValue:[self strategy] forKey:@"strategy"];
    }
    if([self domains])
    {
        [result setValue:[self domains] forKey:@"domains"];
    }
    if([self allowBlank])
    {
        [result setValue:[self allowBlank] forKey:@"allowBlank"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.strategy = [dictionary objectForKey:@"strategy"];
    self.domains = [dictionary objectForKey:@"domains"];
    self.allowBlank = [dictionary objectForKey:@"allowBlank"];
    return self;
}
 @end
@implementation GetHeaderResultObject
-(id) initWithHeaderName:(NSString*) headerName
      headerValue:(NSString*)headerValue
      headerType:(NSString*)headerType { 
     self.headerName = headerName;               
     self.headerValue = headerValue;               
     self.headerType = headerType;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self headerName])
    {
        [result setValue:[self headerName] forKey:@"headerName"];
    }
    if([self headerValue])
    {
        [result setValue:[self headerValue] forKey:@"headerValue"];
    }
    if([self headerType])
    {
        [result setValue:[self headerType] forKey:@"headerType"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.headerName = [dictionary objectForKey:@"headerName"];
    self.headerValue = [dictionary objectForKey:@"headerValue"];
    self.headerType = [dictionary objectForKey:@"headerType"];
    return self;
}
 @end
@implementation SetHttpSslRequestObject
-(id) initWithSource:(NSString*) source
      title:(NSString*)title
      sslCert:(NSString*)sslCert
      sslKey:(NSString*)sslKey
      jumpType:(NSString*)jumpType
      enabled:(NSNumber*)enabled { 
     self.source = source;               
     self.title = title;               
     self.sslCert = sslCert;               
     self.sslKey = sslKey;               
     self.jumpType = jumpType;               
     self.enabled = enabled;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self source])
    {
        [result setValue:[self source] forKey:@"source"];
    }
    if([self title])
    {
        [result setValue:[self title] forKey:@"title"];
    }
    if([self sslCert])
    {
        [result setValue:[self sslCert] forKey:@"sslCert"];
    }
    if([self sslKey])
    {
        [result setValue:[self sslKey] forKey:@"sslKey"];
    }
    if([self jumpType])
    {
        [result setValue:[self jumpType] forKey:@"jumpType"];
    }
    if([self enabled])
    {
        [result setValue:[self enabled] forKey:@"enabled"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.source = [dictionary objectForKey:@"source"];
    self.title = [dictionary objectForKey:@"title"];
    self.sslCert = [dictionary objectForKey:@"sslCert"];
    self.sslKey = [dictionary objectForKey:@"sslKey"];
    self.jumpType = [dictionary objectForKey:@"jumpType"];
    self.enabled = [dictionary objectForKey:@"enabled"];
    return self;
}
 @end
@implementation SetHeaderRequestObject
-(id) initWithHeaderName:(NSString*) headerName
      headerValue:(NSString*)headerValue
      headerType:(NSString*)headerType { 
     self.headerName = headerName;               
     self.headerValue = headerValue;               
     self.headerType = headerType;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self headerName])
    {
        [result setValue:[self headerName] forKey:@"headerName"];
    }
    if([self headerValue])
    {
        [result setValue:[self headerValue] forKey:@"headerValue"];
    }
    if([self headerType])
    {
        [result setValue:[self headerType] forKey:@"headerType"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.headerName = [dictionary objectForKey:@"headerName"];
    self.headerValue = [dictionary objectForKey:@"headerValue"];
    self.headerType = [dictionary objectForKey:@"headerType"];
    return self;
}
 @end
@implementation GetHttpSslResultObject
-(id) initWithSource:(NSString*) source
      title:(NSString*)title
      sslCert:(NSString*)sslCert
      sslKey:(NSString*)sslKey
      jumpType:(NSString*)jumpType
      enabled:(NSNumber*)enabled { 
     self.source = source;               
     self.title = title;               
     self.sslCert = sslCert;               
     self.sslKey = sslKey;               
     self.jumpType = jumpType;               
     self.enabled = enabled;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self source])
    {
        [result setValue:[self source] forKey:@"source"];
    }
    if([self title])
    {
        [result setValue:[self title] forKey:@"title"];
    }
    if([self sslCert])
    {
        [result setValue:[self sslCert] forKey:@"sslCert"];
    }
    if([self sslKey])
    {
        [result setValue:[self sslKey] forKey:@"sslKey"];
    }
    if([self jumpType])
    {
        [result setValue:[self jumpType] forKey:@"jumpType"];
    }
    if([self enabled])
    {
        [result setValue:[self enabled] forKey:@"enabled"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.source = [dictionary objectForKey:@"source"];
    self.title = [dictionary objectForKey:@"title"];
    self.sslCert = [dictionary objectForKey:@"sslCert"];
    self.sslKey = [dictionary objectForKey:@"sslKey"];
    self.jumpType = [dictionary objectForKey:@"jumpType"];
    self.enabled = [dictionary objectForKey:@"enabled"];
    return self;
}
 @end
@implementation DomainObject
-(id) initWithId:(NSString*) idValue
      name:(NSString*)name
      cname:(NSString*)cname
      status:(NSString*)status
      source:(NSString*)source
      asDefault:(NSNumber*)asDefault
      createTime:(NSString*)createTime
      updateTime:(NSString*)updateTime { 
     self.idValue = idValue;               
     self.name = name;               
     self.cname = cname;               
     self.status = status;               
     self.source = source;               
     self.asDefault = asDefault;               
     self.createTime = createTime;               
     self.updateTime = updateTime;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self cname])
    {
        [result setValue:[self cname] forKey:@"cname"];
    }
    if([self status])
    {
        [result setValue:[self status] forKey:@"status"];
    }
    if([self source])
    {
        [result setValue:[self source] forKey:@"source"];
    }
    if([self asDefault])
    {
        [result setValue:[self asDefault] forKey:@"asDefault"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.cname = [dictionary objectForKey:@"cname"];
    self.status = [dictionary objectForKey:@"status"];
    self.source = [dictionary objectForKey:@"source"];
    self.asDefault = [dictionary objectForKey:@"asDefault"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
}
 @end
@implementation URLRuleConfigObject
-(id) initWithAuthType:(NSString*) authType
      authKey:(NSString*)authKey { 
     self.authType = authType;               
     self.authKey = authKey;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self authType])
    {
        [result setValue:[self authType] forKey:@"authType"];
    }
    if([self authKey])
    {
        [result setValue:[self authKey] forKey:@"authKey"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.authType = [dictionary objectForKey:@"authType"];
    self.authKey = [dictionary objectForKey:@"authKey"];
    return self;
}
 @end
@implementation UploadCallbackReq
-(id) initWithStatus:(NSNumber*) status
      name:(NSString*)name
      format:(NSString*)format
      size:(NSNumber*)size
      categoryId:(NSNumber*)categoryId
      coderateId:(NSString*)coderateId
      logoId:(NSString*)logoId
      url:(NSString*)url
      endpoint:(NSString*)endpoint
      bucket:(NSString*)bucket { 
     self.status = status;               
     self.name = name;               
     self.format = format;               
     self.size = size;               
     self.categoryId = categoryId;               
     self.coderateId = coderateId;               
     self.logoId = logoId;               
     self.url = url;               
     self.endpoint = endpoint;               
     self.bucket = bucket;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self status])
    {
        [result setValue:[self status] forKey:@"status"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self format])
    {
        [result setValue:[self format] forKey:@"format"];
    }
    if([self size])
    {
        [result setValue:[self size] forKey:@"size"];
    }
    if([self categoryId])
    {
        [result setValue:[self categoryId] forKey:@"categoryId"];
    }
    if([self coderateId])
    {
        [result setValue:[self coderateId] forKey:@"coderateId"];
    }
    if([self logoId])
    {
        [result setValue:[self logoId] forKey:@"logoId"];
    }
    if([self url])
    {
        [result setValue:[self url] forKey:@"url"];
    }
    if([self endpoint])
    {
        [result setValue:[self endpoint] forKey:@"endpoint"];
    }
    if([self bucket])
    {
        [result setValue:[self bucket] forKey:@"bucket"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.status = [dictionary objectForKey:@"status"];
    self.name = [dictionary objectForKey:@"name"];
    self.format = [dictionary objectForKey:@"format"];
    self.size = [dictionary objectForKey:@"size"];
    self.categoryId = [dictionary objectForKey:@"categoryId"];
    self.coderateId = [dictionary objectForKey:@"coderateId"];
    self.logoId = [dictionary objectForKey:@"logoId"];
    self.url = [dictionary objectForKey:@"url"];
    self.endpoint = [dictionary objectForKey:@"endpoint"];
    self.bucket = [dictionary objectForKey:@"bucket"];
    return self;
}
 @end
@implementation UploadCallbackResp
-(id) initWithMid:(NSString*) mid { 
     self.mid = mid;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self mid])
    {
        [result setValue:[self mid] forKey:@"mid"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.mid = [dictionary objectForKey:@"mid"];
    return self;
}
 @end
@implementation QualityDetectionTemplateObject
-(id) initWithId:(NSNumber*) idValue
      name:(NSString*)name
      templateType:(NSString*)templateType
      detections:(NSArray<NSString*>*)detections
      createTime:(NSString*)createTime
      updateTime:(NSString*)updateTime { 
     self.idValue = idValue;               
     self.name = name;               
     self.templateType = templateType;               
     self.detections = detections;               
     self.createTime = createTime;               
     self.updateTime = updateTime;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self templateType])
    {
        [result setValue:[self templateType] forKey:@"templateType"];
    }
    if([self detections])
    {
        [result setValue:[self detections] forKey:@"detections"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.templateType = [dictionary objectForKey:@"templateType"];
    self.detections = [dictionary objectForKey:@"detections"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
}
 @end
@implementation UpdateQualityDetectionTemplateRequestObject
-(id) initWithName:(NSString*) name
      detections:(NSArray<NSString*>*)detections { 
     self.name = name;               
     self.detections = detections;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self detections])
    {
        [result setValue:[self detections] forKey:@"detections"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.name = [dictionary objectForKey:@"name"];
    self.detections = [dictionary objectForKey:@"detections"];
    return self;
}
 @end
@implementation CreateQualityDetectionTemplateRequestObject
-(id) initWithName:(NSString*) name
      templateType:(NSString*)templateType
      detections:(NSArray<NSString*>*)detections { 
     self.name = name;               
     self.templateType = templateType;               
     self.detections = detections;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self templateType])
    {
        [result setValue:[self templateType] forKey:@"templateType"];
    }
    if([self detections])
    {
        [result setValue:[self detections] forKey:@"detections"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.name = [dictionary objectForKey:@"name"];
    self.templateType = [dictionary objectForKey:@"templateType"];
    self.detections = [dictionary objectForKey:@"detections"];
    return self;
}
 @end
@implementation DataItem
-(id) initWithStartTime:(NSString*) startTime
      endTime:(NSString*)endTime
      data:(NSObject*)data { 
     self.startTime = startTime;               
     self.endTime = endTime;               
     self.data = data;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self startTime])
    {
        [result setValue:[self startTime] forKey:@"startTime"];
    }
    if([self endTime])
    {
        [result setValue:[self endTime] forKey:@"endTime"];
    }
    if([self data])
    {
        [result setValue:[self data] forKey:@"data"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.startTime = [dictionary objectForKey:@"startTime"];
    self.endTime = [dictionary objectForKey:@"endTime"];
    self.data = [dictionary objectForKey:@"data"];
    return self;
}
 @end
@implementation BasicItem
-(id) initWithCode:(NSString*) code
      descriptionValue:(NSString*)descriptionValue { 
     self.code = code;               
     self.descriptionValue = descriptionValue;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self code])
    {
        [result setValue:[self code] forKey:@"code"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.code = [dictionary objectForKey:@"code"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    return self;
}
 @end
@implementation VodSort
-(id) initWithName:(NSString*) name
      direction:(NSString*)direction { 
     self.name = name;               
     self.direction = direction;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self direction])
    {
        [result setValue:[self direction] forKey:@"direction"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.name = [dictionary objectForKey:@"name"];
    self.direction = [dictionary objectForKey:@"direction"];
    return self;
}
 @end
@implementation VodFilter
-(id) initWithName:(NSString*) name
      operatorValue:(NSString*)operatorValue
      values:(NSArray<NSString*>*)values { 
     self.name = name;               
     self.operatorValue = operatorValue;               
     self.values = values;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self operatorValue])
    {
        [result setValue:[self operatorValue] forKey:@"operator"];
    }
    if([self values])
    {
        [result setValue:[self values] forKey:@"values"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.name = [dictionary objectForKey:@"name"];
    self.operatorValue = [dictionary objectForKey:@"operator"];
    self.values = [dictionary objectForKey:@"values"];
    return self;
}
 @end
@implementation SimpleResponse
-(id) initWithRequestId:(NSString*) requestId { 
     self.requestId = requestId;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.requestId = [dictionary objectForKey:@"requestId"];
    return self;
}
 @end
@implementation SubmitTranscodeJobRequestObject
-(id) initWithVideoId:(NSString*) videoId
      templateIds:(NSArray<NSNumber*>*)templateIds
      watermarkIds:(NSArray<NSNumber*>*)watermarkIds { 
     self.videoId = videoId;               
     self.templateIds = templateIds;               
     self.watermarkIds = watermarkIds;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self videoId])
    {
        [result setValue:[self videoId] forKey:@"videoId"];
    }
    if([self templateIds])
    {
        [result setValue:[self templateIds] forKey:@"templateIds"];
    }
    if([self watermarkIds])
    {
        [result setValue:[self watermarkIds] forKey:@"watermarkIds"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.videoId = [dictionary objectForKey:@"videoId"];
    self.templateIds = [dictionary objectForKey:@"templateIds"];
    self.watermarkIds = [dictionary objectForKey:@"watermarkIds"];
    return self;
}
 @end
@implementation TranscodeTaskObject
-(id) initWithTaskId:(NSNumber*) taskId
      name:(NSString*)name
      mediaType:(NSNumber*)mediaType
      status:(NSNumber*)status
      progress:(NSString*)progress
      size:(NSNumber*)size
      templateId:(NSNumber*)templateId
      bitrate:(NSNumber*)bitrate
      codec:(NSString*)codec
      format:(NSString*)format
      width:(NSNumber*)width
      height:(NSNumber*)height
      fps:(NSString*)fps
      createTime:(NSString*)createTime
      updateTime:(NSString*)updateTime { 
     self.taskId = taskId;               
     self.name = name;               
     self.mediaType = mediaType;               
     self.status = status;               
     self.progress = progress;               
     self.size = size;               
     self.templateId = templateId;               
     self.bitrate = bitrate;               
     self.codec = codec;               
     self.format = format;               
     self.width = width;               
     self.height = height;               
     self.fps = fps;               
     self.createTime = createTime;               
     self.updateTime = updateTime;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self taskId])
    {
        [result setValue:[self taskId] forKey:@"taskId"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self mediaType])
    {
        [result setValue:[self mediaType] forKey:@"mediaType"];
    }
    if([self status])
    {
        [result setValue:[self status] forKey:@"status"];
    }
    if([self progress])
    {
        [result setValue:[self progress] forKey:@"progress"];
    }
    if([self size])
    {
        [result setValue:[self size] forKey:@"size"];
    }
    if([self templateId])
    {
        [result setValue:[self templateId] forKey:@"templateId"];
    }
    if([self bitrate])
    {
        [result setValue:[self bitrate] forKey:@"bitrate"];
    }
    if([self codec])
    {
        [result setValue:[self codec] forKey:@"codec"];
    }
    if([self format])
    {
        [result setValue:[self format] forKey:@"format"];
    }
    if([self width])
    {
        [result setValue:[self width] forKey:@"width"];
    }
    if([self height])
    {
        [result setValue:[self height] forKey:@"height"];
    }
    if([self fps])
    {
        [result setValue:[self fps] forKey:@"fps"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.taskId = [dictionary objectForKey:@"taskId"];
    self.name = [dictionary objectForKey:@"name"];
    self.mediaType = [dictionary objectForKey:@"mediaType"];
    self.status = [dictionary objectForKey:@"status"];
    self.progress = [dictionary objectForKey:@"progress"];
    self.size = [dictionary objectForKey:@"size"];
    self.templateId = [dictionary objectForKey:@"templateId"];
    self.bitrate = [dictionary objectForKey:@"bitrate"];
    self.codec = [dictionary objectForKey:@"codec"];
    self.format = [dictionary objectForKey:@"format"];
    self.width = [dictionary objectForKey:@"width"];
    self.height = [dictionary objectForKey:@"height"];
    self.fps = [dictionary objectForKey:@"fps"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
}
 @end
@implementation SubmittedTranscodeTask
-(id) initWithTaskId:(NSNumber*) taskId
      videoId:(NSString*)videoId
      templateId:(NSNumber*)templateId
      watermarkIds:(NSArray<NSNumber*>*)watermarkIds { 
     self.taskId = taskId;               
     self.videoId = videoId;               
     self.templateId = templateId;               
     self.watermarkIds = watermarkIds;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self taskId])
    {
        [result setValue:[self taskId] forKey:@"taskId"];
    }
    if([self videoId])
    {
        [result setValue:[self videoId] forKey:@"videoId"];
    }
    if([self templateId])
    {
        [result setValue:[self templateId] forKey:@"templateId"];
    }
    if([self watermarkIds])
    {
        [result setValue:[self watermarkIds] forKey:@"watermarkIds"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.taskId = [dictionary objectForKey:@"taskId"];
    self.videoId = [dictionary objectForKey:@"videoId"];
    self.templateId = [dictionary objectForKey:@"templateId"];
    self.watermarkIds = [dictionary objectForKey:@"watermarkIds"];
    return self;
}
 @end
@implementation Encapsulation
-(id) initWithFormat:(NSString*) format { 
     self.format = format;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self format])
    {
        [result setValue:[self format] forKey:@"format"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.format = [dictionary objectForKey:@"format"];
    return self;
}
 @end
@implementation Video
-(id) initWithCodec:(NSString*) codec
      bitrate:(NSNumber*)bitrate
      fps:(NSNumber*)fps
      width:(NSNumber*)width
      height:(NSNumber*)height { 
     self.codec = codec;               
     self.bitrate = bitrate;               
     self.fps = fps;               
     self.width = width;               
     self.height = height;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self codec])
    {
        [result setValue:[self codec] forKey:@"codec"];
    }
    if([self bitrate])
    {
        [result setValue:[self bitrate] forKey:@"bitrate"];
    }
    if([self fps])
    {
        [result setValue:[self fps] forKey:@"fps"];
    }
    if([self width])
    {
        [result setValue:[self width] forKey:@"width"];
    }
    if([self height])
    {
        [result setValue:[self height] forKey:@"height"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.codec = [dictionary objectForKey:@"codec"];
    self.bitrate = [dictionary objectForKey:@"bitrate"];
    self.fps = [dictionary objectForKey:@"fps"];
    self.width = [dictionary objectForKey:@"width"];
    self.height = [dictionary objectForKey:@"height"];
    return self;
}
 @end
@implementation Audio
-(id) initWithCodec:(NSString*) codec
      bitrate:(NSNumber*)bitrate
      sampleRate:(NSNumber*)sampleRate
      channels:(NSNumber*)channels
      comfortable:(NSNumber*)comfortable { 
     self.codec = codec;               
     self.bitrate = bitrate;               
     self.sampleRate = sampleRate;               
     self.channels = channels;               
     self.comfortable = comfortable;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self codec])
    {
        [result setValue:[self codec] forKey:@"codec"];
    }
    if([self bitrate])
    {
        [result setValue:[self bitrate] forKey:@"bitrate"];
    }
    if([self sampleRate])
    {
        [result setValue:[self sampleRate] forKey:@"sampleRate"];
    }
    if([self channels])
    {
        [result setValue:[self channels] forKey:@"channels"];
    }
    if([self comfortable])
    {
        [result setValue:[self comfortable] forKey:@"comfortable"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.codec = [dictionary objectForKey:@"codec"];
    self.bitrate = [dictionary objectForKey:@"bitrate"];
    self.sampleRate = [dictionary objectForKey:@"sampleRate"];
    self.channels = [dictionary objectForKey:@"channels"];
    self.comfortable = [dictionary objectForKey:@"comfortable"];
    return self;
}
 @end
@implementation CreateCategoryRequestObject
-(id) initWithName:(NSString*) name
      parentId:(NSNumber*)parentId
      descriptionValue:(NSString*)descriptionValue { 
     self.name = name;               
     self.parentId = parentId;               
     self.descriptionValue = descriptionValue;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self parentId])
    {
        [result setValue:[self parentId] forKey:@"parentId"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.name = [dictionary objectForKey:@"name"];
    self.parentId = [dictionary objectForKey:@"parentId"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    return self;
}
 @end
@implementation UpdateCategoryRequestObject
-(id) initWithName:(NSString*) name
      parentId:(NSNumber*)parentId
      descriptionValue:(NSString*)descriptionValue { 
     self.name = name;               
     self.parentId = parentId;               
     self.descriptionValue = descriptionValue;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self parentId])
    {
        [result setValue:[self parentId] forKey:@"parentId"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.name = [dictionary objectForKey:@"name"];
    self.parentId = [dictionary objectForKey:@"parentId"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    return self;
}
 @end
@implementation CategoryObject
-(id) initWithId:(NSNumber*) idValue
      name:(NSString*)name
      level:(NSNumber*)level
      parentId:(NSNumber*)parentId
      descriptionValue:(NSString*)descriptionValue
      createTime:(NSString*)createTime
      updateTime:(NSString*)updateTime { 
     self.idValue = idValue;               
     self.name = name;               
     self.level = level;               
     self.parentId = parentId;               
     self.descriptionValue = descriptionValue;               
     self.createTime = createTime;               
     self.updateTime = updateTime;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self level])
    {
        [result setValue:[self level] forKey:@"level"];
    }
    if([self parentId])
    {
        [result setValue:[self parentId] forKey:@"parentId"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.level = [dictionary objectForKey:@"level"];
    self.parentId = [dictionary objectForKey:@"parentId"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
}
 @end
@implementation SubCategory
-(id) initWithId:(NSNumber*) idValue
      name:(NSString*)name
      level:(NSNumber*)level
      descriptionValue:(NSString*)descriptionValue
      createTime:(NSString*)createTime
      updateTime:(NSString*)updateTime { 
     self.idValue = idValue;               
     self.name = name;               
     self.level = level;               
     self.descriptionValue = descriptionValue;               
     self.createTime = createTime;               
     self.updateTime = updateTime;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self level])
    {
        [result setValue:[self level] forKey:@"level"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.level = [dictionary objectForKey:@"level"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
}
 @end
@implementation BatchUpdateVideosResultObject
-(id) initWithOkVideoIds:(NSArray<NSString*>*) okVideoIds
      notFoundVideoIds:(NSArray<NSString*>*)notFoundVideoIds
      failedVideoIds:(NSArray<NSString*>*)failedVideoIds { 
     self.okVideoIds = okVideoIds;               
     self.notFoundVideoIds = notFoundVideoIds;               
     self.failedVideoIds = failedVideoIds;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self okVideoIds])
    {
        [result setValue:[self okVideoIds] forKey:@"okVideoIds"];
    }
    if([self notFoundVideoIds])
    {
        [result setValue:[self notFoundVideoIds] forKey:@"notFoundVideoIds"];
    }
    if([self failedVideoIds])
    {
        [result setValue:[self failedVideoIds] forKey:@"failedVideoIds"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.okVideoIds = [dictionary objectForKey:@"okVideoIds"];
    self.notFoundVideoIds = [dictionary objectForKey:@"notFoundVideoIds"];
    self.failedVideoIds = [dictionary objectForKey:@"failedVideoIds"];
    return self;
}
 @end
@implementation Snapshot
-(id) initWithImgId:(NSNumber*) imgId
      imgUrl:(NSString*)imgUrl
      width:(NSNumber*)width
      height:(NSNumber*)height { 
     self.imgId = imgId;               
     self.imgUrl = imgUrl;               
     self.width = width;               
     self.height = height;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self imgId])
    {
        [result setValue:[self imgId] forKey:@"imgId"];
    }
    if([self imgUrl])
    {
        [result setValue:[self imgUrl] forKey:@"imgUrl"];
    }
    if([self width])
    {
        [result setValue:[self width] forKey:@"width"];
    }
    if([self height])
    {
        [result setValue:[self height] forKey:@"height"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.imgId = [dictionary objectForKey:@"imgId"];
    self.imgUrl = [dictionary objectForKey:@"imgUrl"];
    self.width = [dictionary objectForKey:@"width"];
    self.height = [dictionary objectForKey:@"height"];
    return self;
}
 @end
@implementation VideoBaseInfo
-(id) initWithVideoId:(NSString*) videoId
      videoName:(NSString*)videoName
      descriptionValue:(NSString*)descriptionValue
      categoryId:(NSNumber*)categoryId
      categoryName:(NSString*)categoryName
      tags:(NSString*)tags
      duration:(NSNumber*)duration
      coverUrl:(NSString*)coverUrl { 
     self.videoId = videoId;               
     self.videoName = videoName;               
     self.descriptionValue = descriptionValue;               
     self.categoryId = categoryId;               
     self.categoryName = categoryName;               
     self.tags = tags;               
     self.duration = duration;               
     self.coverUrl = coverUrl;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self videoId])
    {
        [result setValue:[self videoId] forKey:@"videoId"];
    }
    if([self videoName])
    {
        [result setValue:[self videoName] forKey:@"videoName"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self categoryId])
    {
        [result setValue:[self categoryId] forKey:@"categoryId"];
    }
    if([self categoryName])
    {
        [result setValue:[self categoryName] forKey:@"categoryName"];
    }
    if([self tags])
    {
        [result setValue:[self tags] forKey:@"tags"];
    }
    if([self duration])
    {
        [result setValue:[self duration] forKey:@"duration"];
    }
    if([self coverUrl])
    {
        [result setValue:[self coverUrl] forKey:@"coverUrl"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.videoId = [dictionary objectForKey:@"videoId"];
    self.videoName = [dictionary objectForKey:@"videoName"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    self.categoryId = [dictionary objectForKey:@"categoryId"];
    self.categoryName = [dictionary objectForKey:@"categoryName"];
    self.tags = [dictionary objectForKey:@"tags"];
    self.duration = [dictionary objectForKey:@"duration"];
    self.coverUrl = [dictionary objectForKey:@"coverUrl"];
    return self;
}
 @end
@implementation UpdateVideoRequestObject
-(id) initWithName:(NSString*) name
      categoryId:(NSNumber*)categoryId
      tags:(NSArray<NSString*>*)tags
      coverUrl:(NSString*)coverUrl
      descriptionValue:(NSString*)descriptionValue { 
     self.name = name;               
     self.categoryId = categoryId;               
     self.tags = tags;               
     self.coverUrl = coverUrl;               
     self.descriptionValue = descriptionValue;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self categoryId])
    {
        [result setValue:[self categoryId] forKey:@"categoryId"];
    }
    if([self tags])
    {
        [result setValue:[self tags] forKey:@"tags"];
    }
    if([self coverUrl])
    {
        [result setValue:[self coverUrl] forKey:@"coverUrl"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.name = [dictionary objectForKey:@"name"];
    self.categoryId = [dictionary objectForKey:@"categoryId"];
    self.tags = [dictionary objectForKey:@"tags"];
    self.coverUrl = [dictionary objectForKey:@"coverUrl"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    return self;
}
 @end
@implementation BatchChangeCategoryRequestObject
-(id) initWithCategoryId:(NSNumber*) categoryId
      videoIds:(NSArray<NSString*>*)videoIds { 
     self.categoryId = categoryId;               
     self.videoIds = videoIds;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self categoryId])
    {
        [result setValue:[self categoryId] forKey:@"categoryId"];
    }
    if([self videoIds])
    {
        [result setValue:[self videoIds] forKey:@"videoIds"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.categoryId = [dictionary objectForKey:@"categoryId"];
    self.videoIds = [dictionary objectForKey:@"videoIds"];
    return self;
}
 @end
@implementation BatchUpdateVideosBulkItem
-(id) initWithVideoId:(NSString*) videoId
      name:(NSString*)name
      categoryId:(NSNumber*)categoryId
      tags:(NSArray<NSString*>*)tags
      coverUrl:(NSString*)coverUrl
      descriptionValue:(NSString*)descriptionValue { 
     self.videoId = videoId;               
     self.name = name;               
     self.categoryId = categoryId;               
     self.tags = tags;               
     self.coverUrl = coverUrl;               
     self.descriptionValue = descriptionValue;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self videoId])
    {
        [result setValue:[self videoId] forKey:@"videoId"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self categoryId])
    {
        [result setValue:[self categoryId] forKey:@"categoryId"];
    }
    if([self tags])
    {
        [result setValue:[self tags] forKey:@"tags"];
    }
    if([self coverUrl])
    {
        [result setValue:[self coverUrl] forKey:@"coverUrl"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.videoId = [dictionary objectForKey:@"videoId"];
    self.name = [dictionary objectForKey:@"name"];
    self.categoryId = [dictionary objectForKey:@"categoryId"];
    self.tags = [dictionary objectForKey:@"tags"];
    self.coverUrl = [dictionary objectForKey:@"coverUrl"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    return self;
}
 @end
@implementation VideoPlayInfo
-(id) initWithTaskId:(NSString*) taskId
      definition:(NSString*)definition
      mediaType:(NSNumber*)mediaType
      status:(NSString*)status
      url:(NSString*)url
      size:(NSNumber*)size
      duration:(NSNumber*)duration
      bitrate:(NSNumber*)bitrate
      codec:(NSString*)codec
      format:(NSString*)format
      width:(NSNumber*)width
      height:(NSNumber*)height
      fps:(NSString*)fps
      createTime:(NSString*)createTime
      updateTime:(NSString*)updateTime { 
     self.taskId = taskId;               
     self.definition = definition;               
     self.mediaType = mediaType;               
     self.status = status;               
     self.url = url;               
     self.size = size;               
     self.duration = duration;               
     self.bitrate = bitrate;               
     self.codec = codec;               
     self.format = format;               
     self.width = width;               
     self.height = height;               
     self.fps = fps;               
     self.createTime = createTime;               
     self.updateTime = updateTime;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self taskId])
    {
        [result setValue:[self taskId] forKey:@"taskId"];
    }
    if([self definition])
    {
        [result setValue:[self definition] forKey:@"definition"];
    }
    if([self mediaType])
    {
        [result setValue:[self mediaType] forKey:@"mediaType"];
    }
    if([self status])
    {
        [result setValue:[self status] forKey:@"status"];
    }
    if([self url])
    {
        [result setValue:[self url] forKey:@"url"];
    }
    if([self size])
    {
        [result setValue:[self size] forKey:@"size"];
    }
    if([self duration])
    {
        [result setValue:[self duration] forKey:@"duration"];
    }
    if([self bitrate])
    {
        [result setValue:[self bitrate] forKey:@"bitrate"];
    }
    if([self codec])
    {
        [result setValue:[self codec] forKey:@"codec"];
    }
    if([self format])
    {
        [result setValue:[self format] forKey:@"format"];
    }
    if([self width])
    {
        [result setValue:[self width] forKey:@"width"];
    }
    if([self height])
    {
        [result setValue:[self height] forKey:@"height"];
    }
    if([self fps])
    {
        [result setValue:[self fps] forKey:@"fps"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.taskId = [dictionary objectForKey:@"taskId"];
    self.definition = [dictionary objectForKey:@"definition"];
    self.mediaType = [dictionary objectForKey:@"mediaType"];
    self.status = [dictionary objectForKey:@"status"];
    self.url = [dictionary objectForKey:@"url"];
    self.size = [dictionary objectForKey:@"size"];
    self.duration = [dictionary objectForKey:@"duration"];
    self.bitrate = [dictionary objectForKey:@"bitrate"];
    self.codec = [dictionary objectForKey:@"codec"];
    self.format = [dictionary objectForKey:@"format"];
    self.width = [dictionary objectForKey:@"width"];
    self.height = [dictionary objectForKey:@"height"];
    self.fps = [dictionary objectForKey:@"fps"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
}
 @end
@implementation DeleteVideoStreamsRequestObject
-(id) initWithTaskIds:(NSArray<NSNumber*>*) taskIds { 
     self.taskIds = taskIds;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self taskIds])
    {
        [result setValue:[self taskIds] forKey:@"taskIds"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.taskIds = [dictionary objectForKey:@"taskIds"];
    return self;
}
 @end
@implementation DeleteVideoStreamsResultObject
-(id) initWithOkTaskIds:(NSArray<NSNumber*>*) okTaskIds
      notFoundTaskIds:(NSArray<NSNumber*>*)notFoundTaskIds
      failedTaskIds:(NSArray<NSNumber*>*)failedTaskIds { 
     self.okTaskIds = okTaskIds;               
     self.notFoundTaskIds = notFoundTaskIds;               
     self.failedTaskIds = failedTaskIds;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self okTaskIds])
    {
        [result setValue:[self okTaskIds] forKey:@"okTaskIds"];
    }
    if([self notFoundTaskIds])
    {
        [result setValue:[self notFoundTaskIds] forKey:@"notFoundTaskIds"];
    }
    if([self failedTaskIds])
    {
        [result setValue:[self failedTaskIds] forKey:@"failedTaskIds"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.okTaskIds = [dictionary objectForKey:@"okTaskIds"];
    self.notFoundTaskIds = [dictionary objectForKey:@"notFoundTaskIds"];
    self.failedTaskIds = [dictionary objectForKey:@"failedTaskIds"];
    return self;
}
 @end
@implementation BatchDeleteVideosRequestObject
-(id) initWithVideoIds:(NSArray<NSString*>*) videoIds { 
     self.videoIds = videoIds;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self videoIds])
    {
        [result setValue:[self videoIds] forKey:@"videoIds"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.videoIds = [dictionary objectForKey:@"videoIds"];
    return self;
}
 @end
@implementation BatchChangeCategoryResultObject
-(id) initWithOkVideoIds:(NSArray<NSString*>*) okVideoIds
      notFoundVideoIds:(NSArray<NSString*>*)notFoundVideoIds { 
     self.okVideoIds = okVideoIds;               
     self.notFoundVideoIds = notFoundVideoIds;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self okVideoIds])
    {
        [result setValue:[self okVideoIds] forKey:@"okVideoIds"];
    }
    if([self notFoundVideoIds])
    {
        [result setValue:[self notFoundVideoIds] forKey:@"notFoundVideoIds"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.okVideoIds = [dictionary objectForKey:@"okVideoIds"];
    self.notFoundVideoIds = [dictionary objectForKey:@"notFoundVideoIds"];
    return self;
}
 @end
@implementation BatchDeleteVideosResultObject
-(id) initWithOkVideoIds:(NSArray<NSString*>*) okVideoIds
      notFoundVideoIds:(NSArray<NSString*>*)notFoundVideoIds
      failedVideoIds:(NSArray<NSString*>*)failedVideoIds { 
     self.okVideoIds = okVideoIds;               
     self.notFoundVideoIds = notFoundVideoIds;               
     self.failedVideoIds = failedVideoIds;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self okVideoIds])
    {
        [result setValue:[self okVideoIds] forKey:@"okVideoIds"];
    }
    if([self notFoundVideoIds])
    {
        [result setValue:[self notFoundVideoIds] forKey:@"notFoundVideoIds"];
    }
    if([self failedVideoIds])
    {
        [result setValue:[self failedVideoIds] forKey:@"failedVideoIds"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.okVideoIds = [dictionary objectForKey:@"okVideoIds"];
    self.notFoundVideoIds = [dictionary objectForKey:@"notFoundVideoIds"];
    self.failedVideoIds = [dictionary objectForKey:@"failedVideoIds"];
    return self;
}
 @end
@implementation EstimateData
-(id) initWithTimestamp:(NSNumber*) timestamp
      total:(NSNumber*)total
      domain:(NSString*)domain { 
     self.timestamp = timestamp;               
     self.total = total;               
     self.domain = domain;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self timestamp])
    {
        [result setValue:[self timestamp] forKey:@"timestamp"];
    }
    if([self total])
    {
        [result setValue:[self total] forKey:@"total"];
    }
    if([self domain])
    {
        [result setValue:[self domain] forKey:@"domain"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.timestamp = [dictionary objectForKey:@"timestamp"];
    self.total = [dictionary objectForKey:@"total"];
    self.domain = [dictionary objectForKey:@"domain"];
    return self;
}
 @end
@implementation TranscodeData
-(id) initWithDate:(NSString*) date
      duration:(NSNumber*)duration { 
     self.date = date;               
     self.duration = duration;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self date])
    {
        [result setValue:[self date] forKey:@"date"];
    }
    if([self duration])
    {
        [result setValue:[self duration] forKey:@"duration"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.date = [dictionary objectForKey:@"date"];
    self.duration = [dictionary objectForKey:@"duration"];
    return self;
}
 @end
@implementation StorageSize
-(id) initWithStartTime:(NSString*) startTime
      endTime:(NSString*)endTime
      size:(NSNumber*)size { 
     self.startTime = startTime;               
     self.endTime = endTime;               
     self.size = size;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self startTime])
    {
        [result setValue:[self startTime] forKey:@"startTime"];
    }
    if([self endTime])
    {
        [result setValue:[self endTime] forKey:@"endTime"];
    }
    if([self size])
    {
        [result setValue:[self size] forKey:@"size"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.startTime = [dictionary objectForKey:@"startTime"];
    self.endTime = [dictionary objectForKey:@"endTime"];
    self.size = [dictionary objectForKey:@"size"];
    return self;
}
 @end
@implementation UploadTask
-(id) initWithTaskId:(NSNumber*) taskId
      name:(NSString*)name
      categoryId:(NSNumber*)categoryId
      category:(NSString*)category
      format:(NSString*)format
      size:(NSNumber*)size
      status:(NSNumber*)status { 
     self.taskId = taskId;               
     self.name = name;               
     self.categoryId = categoryId;               
     self.category = category;               
     self.format = format;               
     self.size = size;               
     self.status = status;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self taskId])
    {
        [result setValue:[self taskId] forKey:@"taskId"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self categoryId])
    {
        [result setValue:[self categoryId] forKey:@"categoryId"];
    }
    if([self category])
    {
        [result setValue:[self category] forKey:@"category"];
    }
    if([self format])
    {
        [result setValue:[self format] forKey:@"format"];
    }
    if([self size])
    {
        [result setValue:[self size] forKey:@"size"];
    }
    if([self status])
    {
        [result setValue:[self status] forKey:@"status"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.taskId = [dictionary objectForKey:@"taskId"];
    self.name = [dictionary objectForKey:@"name"];
    self.categoryId = [dictionary objectForKey:@"categoryId"];
    self.category = [dictionary objectForKey:@"category"];
    self.format = [dictionary objectForKey:@"format"];
    self.size = [dictionary objectForKey:@"size"];
    self.status = [dictionary objectForKey:@"status"];
    return self;
}
 @end
@implementation CreateWatermarkRequestObject
-(id) initWithName:(NSString*) name
      imgUrl:(NSString*)imgUrl
      width:(NSString*)width
      height:(NSString*)height
      sizeUnit:(NSString*)sizeUnit
      position:(NSString*)position
      offsetX:(NSString*)offsetX
      offsetY:(NSString*)offsetY
      offsetUnit:(NSString*)offsetUnit { 
     self.name = name;               
     self.imgUrl = imgUrl;               
     self.width = width;               
     self.height = height;               
     self.sizeUnit = sizeUnit;               
     self.position = position;               
     self.offsetX = offsetX;               
     self.offsetY = offsetY;               
     self.offsetUnit = offsetUnit;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self imgUrl])
    {
        [result setValue:[self imgUrl] forKey:@"imgUrl"];
    }
    if([self width])
    {
        [result setValue:[self width] forKey:@"width"];
    }
    if([self height])
    {
        [result setValue:[self height] forKey:@"height"];
    }
    if([self sizeUnit])
    {
        [result setValue:[self sizeUnit] forKey:@"sizeUnit"];
    }
    if([self position])
    {
        [result setValue:[self position] forKey:@"position"];
    }
    if([self offsetX])
    {
        [result setValue:[self offsetX] forKey:@"offsetX"];
    }
    if([self offsetY])
    {
        [result setValue:[self offsetY] forKey:@"offsetY"];
    }
    if([self offsetUnit])
    {
        [result setValue:[self offsetUnit] forKey:@"offsetUnit"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.name = [dictionary objectForKey:@"name"];
    self.imgUrl = [dictionary objectForKey:@"imgUrl"];
    self.width = [dictionary objectForKey:@"width"];
    self.height = [dictionary objectForKey:@"height"];
    self.sizeUnit = [dictionary objectForKey:@"sizeUnit"];
    self.position = [dictionary objectForKey:@"position"];
    self.offsetX = [dictionary objectForKey:@"offsetX"];
    self.offsetY = [dictionary objectForKey:@"offsetY"];
    self.offsetUnit = [dictionary objectForKey:@"offsetUnit"];
    return self;
}
 @end
@implementation UpdateWatermarkRequestObject
-(id) initWithName:(NSString*) name
      imgUrl:(NSString*)imgUrl
      width:(NSString*)width
      height:(NSString*)height
      sizeUnit:(NSString*)sizeUnit
      position:(NSString*)position
      offsetX:(NSString*)offsetX
      offsetY:(NSString*)offsetY
      offsetUnit:(NSString*)offsetUnit { 
     self.name = name;               
     self.imgUrl = imgUrl;               
     self.width = width;               
     self.height = height;               
     self.sizeUnit = sizeUnit;               
     self.position = position;               
     self.offsetX = offsetX;               
     self.offsetY = offsetY;               
     self.offsetUnit = offsetUnit;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self imgUrl])
    {
        [result setValue:[self imgUrl] forKey:@"imgUrl"];
    }
    if([self width])
    {
        [result setValue:[self width] forKey:@"width"];
    }
    if([self height])
    {
        [result setValue:[self height] forKey:@"height"];
    }
    if([self sizeUnit])
    {
        [result setValue:[self sizeUnit] forKey:@"sizeUnit"];
    }
    if([self position])
    {
        [result setValue:[self position] forKey:@"position"];
    }
    if([self offsetX])
    {
        [result setValue:[self offsetX] forKey:@"offsetX"];
    }
    if([self offsetY])
    {
        [result setValue:[self offsetY] forKey:@"offsetY"];
    }
    if([self offsetUnit])
    {
        [result setValue:[self offsetUnit] forKey:@"offsetUnit"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.name = [dictionary objectForKey:@"name"];
    self.imgUrl = [dictionary objectForKey:@"imgUrl"];
    self.width = [dictionary objectForKey:@"width"];
    self.height = [dictionary objectForKey:@"height"];
    self.sizeUnit = [dictionary objectForKey:@"sizeUnit"];
    self.position = [dictionary objectForKey:@"position"];
    self.offsetX = [dictionary objectForKey:@"offsetX"];
    self.offsetY = [dictionary objectForKey:@"offsetY"];
    self.offsetUnit = [dictionary objectForKey:@"offsetUnit"];
    return self;
}
 @end
@implementation WatermarkObject
-(id) initWithId:(NSNumber*) idValue
      name:(NSString*)name
      imgUrl:(NSString*)imgUrl
      width:(NSString*)width
      height:(NSString*)height
      sizeUnit:(NSString*)sizeUnit
      position:(NSString*)position
      offsetX:(NSString*)offsetX
      offsetY:(NSString*)offsetY
      offsetUnit:(NSString*)offsetUnit
      createTime:(NSString*)createTime
      updateTime:(NSString*)updateTime { 
     self.idValue = idValue;               
     self.name = name;               
     self.imgUrl = imgUrl;               
     self.width = width;               
     self.height = height;               
     self.sizeUnit = sizeUnit;               
     self.position = position;               
     self.offsetX = offsetX;               
     self.offsetY = offsetY;               
     self.offsetUnit = offsetUnit;               
     self.createTime = createTime;               
     self.updateTime = updateTime;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self imgUrl])
    {
        [result setValue:[self imgUrl] forKey:@"imgUrl"];
    }
    if([self width])
    {
        [result setValue:[self width] forKey:@"width"];
    }
    if([self height])
    {
        [result setValue:[self height] forKey:@"height"];
    }
    if([self sizeUnit])
    {
        [result setValue:[self sizeUnit] forKey:@"sizeUnit"];
    }
    if([self position])
    {
        [result setValue:[self position] forKey:@"position"];
    }
    if([self offsetX])
    {
        [result setValue:[self offsetX] forKey:@"offsetX"];
    }
    if([self offsetY])
    {
        [result setValue:[self offsetY] forKey:@"offsetY"];
    }
    if([self offsetUnit])
    {
        [result setValue:[self offsetUnit] forKey:@"offsetUnit"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.imgUrl = [dictionary objectForKey:@"imgUrl"];
    self.width = [dictionary objectForKey:@"width"];
    self.height = [dictionary objectForKey:@"height"];
    self.sizeUnit = [dictionary objectForKey:@"sizeUnit"];
    self.position = [dictionary objectForKey:@"position"];
    self.offsetX = [dictionary objectForKey:@"offsetX"];
    self.offsetY = [dictionary objectForKey:@"offsetY"];
    self.offsetUnit = [dictionary objectForKey:@"offsetUnit"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
}
 @end
@implementation Task
-(id) initWithTaskId:(NSNumber*) taskId
      name:(NSString*)name
      categoryId:(NSNumber*)categoryId
      category:(NSString*)category
      format:(NSString*)format
      size:(NSNumber*)size
      status:(NSNumber*)status { 
     self.taskId = taskId;               
     self.name = name;               
     self.categoryId = categoryId;               
     self.category = category;               
     self.format = format;               
     self.size = size;               
     self.status = status;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self taskId])
    {
        [result setValue:[self taskId] forKey:@"taskId"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self categoryId])
    {
        [result setValue:[self categoryId] forKey:@"categoryId"];
    }
    if([self category])
    {
        [result setValue:[self category] forKey:@"category"];
    }
    if([self format])
    {
        [result setValue:[self format] forKey:@"format"];
    }
    if([self size])
    {
        [result setValue:[self size] forKey:@"size"];
    }
    if([self status])
    {
        [result setValue:[self status] forKey:@"status"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.taskId = [dictionary objectForKey:@"taskId"];
    self.name = [dictionary objectForKey:@"name"];
    self.categoryId = [dictionary objectForKey:@"categoryId"];
    self.category = [dictionary objectForKey:@"category"];
    self.format = [dictionary objectForKey:@"format"];
    self.size = [dictionary objectForKey:@"size"];
    self.status = [dictionary objectForKey:@"status"];
    return self;
}
 @end
@implementation VideoUploadTaskObject
-(id) initWithVideoId:(NSString*) videoId
      uploadUrl:(NSString*)uploadUrl { 
     self.videoId = videoId;               
     self.uploadUrl = uploadUrl;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self videoId])
    {
        [result setValue:[self videoId] forKey:@"videoId"];
    }
    if([self uploadUrl])
    {
        [result setValue:[self uploadUrl] forKey:@"uploadUrl"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.videoId = [dictionary objectForKey:@"videoId"];
    self.uploadUrl = [dictionary objectForKey:@"uploadUrl"];
    return self;
}
 @end
@implementation CreateVideoUploadTaskRequestObject
-(id) initWithHttpMethod:(NSString*) httpMethod
      title:(NSString*)title
      fileName:(NSString*)fileName
      fileSize:(NSNumber*)fileSize
      coverUrl:(NSString*)coverUrl
      descriptionValue:(NSString*)descriptionValue
      categoryId:(NSNumber*)categoryId
      tags:(NSArray<NSString*>*)tags
      transcodeTemplateIds:(NSArray<NSNumber*>*)transcodeTemplateIds
      watermarkIds:(NSArray<NSNumber*>*)watermarkIds { 
     self.httpMethod = httpMethod;               
     self.title = title;               
     self.fileName = fileName;               
     self.fileSize = fileSize;               
     self.coverUrl = coverUrl;               
     self.descriptionValue = descriptionValue;               
     self.categoryId = categoryId;               
     self.tags = tags;               
     self.transcodeTemplateIds = transcodeTemplateIds;               
     self.watermarkIds = watermarkIds;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self httpMethod])
    {
        [result setValue:[self httpMethod] forKey:@"httpMethod"];
    }
    if([self title])
    {
        [result setValue:[self title] forKey:@"title"];
    }
    if([self fileName])
    {
        [result setValue:[self fileName] forKey:@"fileName"];
    }
    if([self fileSize])
    {
        [result setValue:[self fileSize] forKey:@"fileSize"];
    }
    if([self coverUrl])
    {
        [result setValue:[self coverUrl] forKey:@"coverUrl"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self categoryId])
    {
        [result setValue:[self categoryId] forKey:@"categoryId"];
    }
    if([self tags])
    {
        [result setValue:[self tags] forKey:@"tags"];
    }
    if([self transcodeTemplateIds])
    {
        [result setValue:[self transcodeTemplateIds] forKey:@"transcodeTemplateIds"];
    }
    if([self watermarkIds])
    {
        [result setValue:[self watermarkIds] forKey:@"watermarkIds"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.httpMethod = [dictionary objectForKey:@"httpMethod"];
    self.title = [dictionary objectForKey:@"title"];
    self.fileName = [dictionary objectForKey:@"fileName"];
    self.fileSize = [dictionary objectForKey:@"fileSize"];
    self.coverUrl = [dictionary objectForKey:@"coverUrl"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    self.categoryId = [dictionary objectForKey:@"categoryId"];
    self.tags = [dictionary objectForKey:@"tags"];
    self.transcodeTemplateIds = [dictionary objectForKey:@"transcodeTemplateIds"];
    self.watermarkIds = [dictionary objectForKey:@"watermarkIds"];
    return self;
}
 @end
@implementation CreateImageUploadTaskRequestObject
-(id) initWithHttpMethod:(NSString*) httpMethod
      fileName:(NSString*)fileName
      fileSize:(NSNumber*)fileSize { 
     self.httpMethod = httpMethod;               
     self.fileName = fileName;               
     self.fileSize = fileSize;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self httpMethod])
    {
        [result setValue:[self httpMethod] forKey:@"httpMethod"];
    }
    if([self fileName])
    {
        [result setValue:[self fileName] forKey:@"fileName"];
    }
    if([self fileSize])
    {
        [result setValue:[self fileSize] forKey:@"fileSize"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.httpMethod = [dictionary objectForKey:@"httpMethod"];
    self.fileName = [dictionary objectForKey:@"fileName"];
    self.fileSize = [dictionary objectForKey:@"fileSize"];
    return self;
}
 @end
@implementation ImageUploadTaskObject
-(id) initWithImageId:(NSString*) imageId
      uploadUrl:(NSString*)uploadUrl { 
     self.imageId = imageId;               
     self.uploadUrl = uploadUrl;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self imageId])
    {
        [result setValue:[self imageId] forKey:@"imageId"];
    }
    if([self uploadUrl])
    {
        [result setValue:[self uploadUrl] forKey:@"uploadUrl"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.imageId = [dictionary objectForKey:@"imageId"];
    self.uploadUrl = [dictionary objectForKey:@"uploadUrl"];
    return self;
}
 @end
@implementation Areas
-(id) initWithMainland:(NSArray<BasicItem*>*) mainland
      overseas:(NSArray<BasicItem*>*)overseas { 
     self.mainland = mainland;               
     self.overseas = overseas;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self mainland])
    {
        NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
        for (int i =0 ; i< [[self mainland] count]; i++) {
            BasicItem* item = [[self mainland] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"mainland"];
    }
    if([self overseas])
    {
        NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
        for (int i =0 ; i< [[self overseas] count]; i++) {
            BasicItem* item = [[self overseas] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"overseas"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* mainlandArray = [dictionary objectForKey:@"mainland"];
    if(mainlandArray&&![mainlandArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [mainlandArray count];i++)
        {
            BasicItem* item = [[BasicItem alloc]initWithDic:[mainlandArray objectAtIndex:i]];
            if(item)
            {
                [propertyArray addObject:item];
            }
        }
        self.mainland = propertyArray;
    }
    NSArray* overseasArray = [dictionary objectForKey:@"overseas"];
    if(overseasArray&&![overseasArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [overseasArray count];i++)
        {
            BasicItem* item = [[BasicItem alloc]initWithDic:[overseasArray objectAtIndex:i]];
            if(item)
            {
                [propertyArray addObject:item];
            }
        }
        self.overseas = propertyArray;
    }
    return self;
}
 @end
@implementation BatchSubmitQualityDetectionJobsRequestObject
-(id) initWithBulkItems:(NSArray<SubmitQualityDetectionJobRequestObject*>*) bulkItems { 
     self.bulkItems = bulkItems;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self bulkItems])
    {
        NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
        for (int i =0 ; i< [[self bulkItems] count]; i++) {
            SubmitQualityDetectionJobRequestObject* item = [[self bulkItems] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"bulkItems"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* bulkItemsArray = [dictionary objectForKey:@"bulkItems"];
    if(bulkItemsArray&&![bulkItemsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [bulkItemsArray count];i++)
        {
            SubmitQualityDetectionJobRequestObject* item = [[SubmitQualityDetectionJobRequestObject alloc]initWithDic:[bulkItemsArray objectAtIndex:i]];
            if(item)
            {
                [propertyArray addObject:item];
            }
        }
        self.bulkItems = propertyArray;
    }
    return self;
}
 @end
@implementation SetRefererRuleRequestObject
-(id) initWithConfig:(RefererRuleConfigObject*) config
      enabled:(NSNumber*)enabled { 
     self.config = config;               
     self.enabled = enabled;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self config])
    {
        [result setValue:[[self config] dictionary]forKey:@"config"];
    }
    if([self enabled])
    {
        [result setValue:[self enabled] forKey:@"enabled"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.config = [[RefererRuleConfigObject alloc]initWithDic:[dictionary objectForKey:@"config"]];
    self.enabled = [dictionary objectForKey:@"enabled"];
    return self;
}
 @end
@implementation SetIPRuleRequestObject
-(id) initWithConfig:(IPRuleConfigObject*) config
      enabled:(NSNumber*)enabled { 
     self.config = config;               
     self.enabled = enabled;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self config])
    {
        [result setValue:[[self config] dictionary]forKey:@"config"];
    }
    if([self enabled])
    {
        [result setValue:[self enabled] forKey:@"enabled"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.config = [[IPRuleConfigObject alloc]initWithDic:[dictionary objectForKey:@"config"]];
    self.enabled = [dictionary objectForKey:@"enabled"];
    return self;
}
 @end
@implementation GetIPRuleResultObject
-(id) initWithRuleType:(NSString*) ruleType
      config:(IPRuleConfigObject*)config
      enabled:(NSNumber*)enabled { 
     self.ruleType = ruleType;               
     self.config = config;               
     self.enabled = enabled;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self ruleType])
    {
        [result setValue:[self ruleType] forKey:@"ruleType"];
    }
    if([self config])
    {
        [result setValue:[[self config] dictionary]forKey:@"config"];
    }
    if([self enabled])
    {
        [result setValue:[self enabled] forKey:@"enabled"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.ruleType = [dictionary objectForKey:@"ruleType"];
    self.config = [[IPRuleConfigObject alloc]initWithDic:[dictionary objectForKey:@"config"]];
    self.enabled = [dictionary objectForKey:@"enabled"];
    return self;
}
 @end
@implementation ListHeadersResultObject
-(id) initWithHeaders:(NSArray<GetHeaderResultObject*>*) headers { 
     self.headers = headers;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self headers])
    {
        NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
        for (int i =0 ; i< [[self headers] count]; i++) {
            GetHeaderResultObject* item = [[self headers] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"headers"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* headersArray = [dictionary objectForKey:@"headers"];
    if(headersArray&&![headersArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [headersArray count];i++)
        {
            GetHeaderResultObject* item = [[GetHeaderResultObject alloc]initWithDic:[headersArray objectAtIndex:i]];
            if(item)
            {
                [propertyArray addObject:item];
            }
        }
        self.headers = propertyArray;
    }
    return self;
}
 @end
@implementation GetURLRuleResultObject
-(id) initWithRuleType:(NSString*) ruleType
      config:(URLRuleConfigObject*)config
      enabled:(NSNumber*)enabled { 
     self.ruleType = ruleType;               
     self.config = config;               
     self.enabled = enabled;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self ruleType])
    {
        [result setValue:[self ruleType] forKey:@"ruleType"];
    }
    if([self config])
    {
        [result setValue:[[self config] dictionary]forKey:@"config"];
    }
    if([self enabled])
    {
        [result setValue:[self enabled] forKey:@"enabled"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.ruleType = [dictionary objectForKey:@"ruleType"];
    self.config = [[URLRuleConfigObject alloc]initWithDic:[dictionary objectForKey:@"config"]];
    self.enabled = [dictionary objectForKey:@"enabled"];
    return self;
}
 @end
@implementation SetURLRuleRequestObject
-(id) initWithConfig:(URLRuleConfigObject*) config
      enabled:(NSNumber*)enabled { 
     self.config = config;               
     self.enabled = enabled;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self config])
    {
        [result setValue:[[self config] dictionary]forKey:@"config"];
    }
    if([self enabled])
    {
        [result setValue:[self enabled] forKey:@"enabled"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.config = [[URLRuleConfigObject alloc]initWithDic:[dictionary objectForKey:@"config"]];
    self.enabled = [dictionary objectForKey:@"enabled"];
    return self;
}
 @end
@implementation GetRefererRuleResultObject
-(id) initWithRuleType:(NSString*) ruleType
      config:(RefererRuleConfigObject*)config
      enabled:(NSNumber*)enabled { 
     self.ruleType = ruleType;               
     self.config = config;               
     self.enabled = enabled;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self ruleType])
    {
        [result setValue:[self ruleType] forKey:@"ruleType"];
    }
    if([self config])
    {
        [result setValue:[[self config] dictionary]forKey:@"config"];
    }
    if([self enabled])
    {
        [result setValue:[self enabled] forKey:@"enabled"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.ruleType = [dictionary objectForKey:@"ruleType"];
    self.config = [[RefererRuleConfigObject alloc]initWithDic:[dictionary objectForKey:@"config"]];
    self.enabled = [dictionary objectForKey:@"enabled"];
    return self;
}
 @end
@implementation ListDomainsResultObject
-(id) initWithPageNumber:(NSNumber*) pageNumber
      pageSize:(NSNumber*)pageSize
      totalElements:(NSNumber*)totalElements
      totalPages:(NSNumber*)totalPages
      content:(NSArray<DomainObject*>*)content { 
     self.pageNumber = pageNumber;               
     self.pageSize = pageSize;               
     self.totalElements = totalElements;               
     self.totalPages = totalPages;               
     self.content = content;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self totalElements])
    {
        [result setValue:[self totalElements] forKey:@"totalElements"];
    }
    if([self totalPages])
    {
        [result setValue:[self totalPages] forKey:@"totalPages"];
    }
    if([self content])
    {
        NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
        for (int i =0 ; i< [[self content] count]; i++) {
            DomainObject* item = [[self content] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"content"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    self.totalElements = [dictionary objectForKey:@"totalElements"];
    self.totalPages = [dictionary objectForKey:@"totalPages"];
    NSArray* contentArray = [dictionary objectForKey:@"content"];
    if(contentArray&&![contentArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [contentArray count];i++)
        {
            DomainObject* item = [[DomainObject alloc]initWithDic:[contentArray objectAtIndex:i]];
            if(item)
            {
                [propertyArray addObject:item];
            }
        }
        self.content = propertyArray;
    }
    return self;
}
 @end
@implementation ListQualityDetectionTemplatesResultObject
-(id) initWithPageNumber:(NSNumber*) pageNumber
      pageSize:(NSNumber*)pageSize
      totalElements:(NSNumber*)totalElements
      totalPages:(NSNumber*)totalPages
      content:(NSArray<QualityDetectionTemplateObject*>*)content { 
     self.pageNumber = pageNumber;               
     self.pageSize = pageSize;               
     self.totalElements = totalElements;               
     self.totalPages = totalPages;               
     self.content = content;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self totalElements])
    {
        [result setValue:[self totalElements] forKey:@"totalElements"];
    }
    if([self totalPages])
    {
        [result setValue:[self totalPages] forKey:@"totalPages"];
    }
    if([self content])
    {
        NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
        for (int i =0 ; i< [[self content] count]; i++) {
            QualityDetectionTemplateObject* item = [[self content] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"content"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    self.totalElements = [dictionary objectForKey:@"totalElements"];
    self.totalPages = [dictionary objectForKey:@"totalPages"];
    NSArray* contentArray = [dictionary objectForKey:@"content"];
    if(contentArray&&![contentArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [contentArray count];i++)
        {
            QualityDetectionTemplateObject* item = [[QualityDetectionTemplateObject alloc]initWithDic:[contentArray objectAtIndex:i]];
            if(item)
            {
                [propertyArray addObject:item];
            }
        }
        self.content = propertyArray;
    }
    return self;
}
 @end
@implementation QueryCDNBasicDataResultObject
-(id) initWithIsps:(NSArray<BasicItem*>*) isps
      areas:(Areas*)areas { 
     self.isps = isps;               
     self.areas = areas;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self isps])
    {
        NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
        for (int i =0 ; i< [[self isps] count]; i++) {
            BasicItem* item = [[self isps] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"isps"];
    }
    if([self areas])
    {
        [result setValue:[[self areas] dictionary]forKey:@"areas"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* ispsArray = [dictionary objectForKey:@"isps"];
    if(ispsArray&&![ispsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [ispsArray count];i++)
        {
            BasicItem* item = [[BasicItem alloc]initWithDic:[ispsArray objectAtIndex:i]];
            if(item)
            {
                [propertyArray addObject:item];
            }
        }
        self.isps = propertyArray;
    }
    self.areas = [[Areas alloc]initWithDic:[dictionary objectForKey:@"areas"]];
    return self;
}
 @end
@implementation QueryCDNStatsDataResultObject
-(id) initWithStartTime:(NSString*) startTime
      endTime:(NSString*)endTime
      data:(NSArray<DataItem*>*)data { 
     self.startTime = startTime;               
     self.endTime = endTime;               
     self.data = data;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self startTime])
    {
        [result setValue:[self startTime] forKey:@"startTime"];
    }
    if([self endTime])
    {
        [result setValue:[self endTime] forKey:@"endTime"];
    }
    if([self data])
    {
        NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
        for (int i =0 ; i< [[self data] count]; i++) {
            DataItem* item = [[self data] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"data"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.startTime = [dictionary objectForKey:@"startTime"];
    self.endTime = [dictionary objectForKey:@"endTime"];
    NSArray* dataArray = [dictionary objectForKey:@"data"];
    if(dataArray&&![dataArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [dataArray count];i++)
        {
            DataItem* item = [[DataItem alloc]initWithDic:[dataArray objectAtIndex:i]];
            if(item)
            {
                [propertyArray addObject:item];
            }
        }
        self.data = propertyArray;
    }
    return self;
}
 @end
@implementation BatchSubmitTranscodeJobsRequestObject
-(id) initWithBulkItems:(NSArray<SubmitTranscodeJobRequestObject*>*) bulkItems { 
     self.bulkItems = bulkItems;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self bulkItems])
    {
        NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
        for (int i =0 ; i< [[self bulkItems] count]; i++) {
            SubmitTranscodeJobRequestObject* item = [[self bulkItems] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"bulkItems"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* bulkItemsArray = [dictionary objectForKey:@"bulkItems"];
    if(bulkItemsArray&&![bulkItemsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [bulkItemsArray count];i++)
        {
            SubmitTranscodeJobRequestObject* item = [[SubmitTranscodeJobRequestObject alloc]initWithDic:[bulkItemsArray objectAtIndex:i]];
            if(item)
            {
                [propertyArray addObject:item];
            }
        }
        self.bulkItems = propertyArray;
    }
    return self;
}
 @end
@implementation SubmitTranscodeJobResultObject
-(id) initWithTasks:(NSArray<SubmittedTranscodeTask*>*) tasks { 
     self.tasks = tasks;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self tasks])
    {
        NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
        for (int i =0 ; i< [[self tasks] count]; i++) {
            SubmittedTranscodeTask* item = [[self tasks] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"tasks"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* tasksArray = [dictionary objectForKey:@"tasks"];
    if(tasksArray&&![tasksArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [tasksArray count];i++)
        {
            SubmittedTranscodeTask* item = [[SubmittedTranscodeTask alloc]initWithDic:[tasksArray objectAtIndex:i]];
            if(item)
            {
                [propertyArray addObject:item];
            }
        }
        self.tasks = propertyArray;
    }
    return self;
}
 @end
@implementation BatchSubmitTranscodeJobsResultObject
-(id) initWithTasks:(NSArray<SubmittedTranscodeTask*>*) tasks { 
     self.tasks = tasks;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self tasks])
    {
        NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
        for (int i =0 ; i< [[self tasks] count]; i++) {
            SubmittedTranscodeTask* item = [[self tasks] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"tasks"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* tasksArray = [dictionary objectForKey:@"tasks"];
    if(tasksArray&&![tasksArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [tasksArray count];i++)
        {
            SubmittedTranscodeTask* item = [[SubmittedTranscodeTask alloc]initWithDic:[tasksArray objectAtIndex:i]];
            if(item)
            {
                [propertyArray addObject:item];
            }
        }
        self.tasks = propertyArray;
    }
    return self;
}
 @end
@implementation TranscodeTemplateObject
-(id) initWithId:(NSNumber*) idValue
      name:(NSString*)name
      video:(Video*)video
      audio:(Audio*)audio
      encapsulation:(Encapsulation*)encapsulation
      definition:(NSString*)definition
      source:(NSString*)source
      templateType:(NSString*)templateType
      createTime:(NSString*)createTime
      updateTime:(NSString*)updateTime { 
     self.idValue = idValue;               
     self.name = name;               
     self.video = video;               
     self.audio = audio;               
     self.encapsulation = encapsulation;               
     self.definition = definition;               
     self.source = source;               
     self.templateType = templateType;               
     self.createTime = createTime;               
     self.updateTime = updateTime;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self video])
    {
        [result setValue:[[self video] dictionary]forKey:@"video"];
    }
    if([self audio])
    {
        [result setValue:[[self audio] dictionary]forKey:@"audio"];
    }
    if([self encapsulation])
    {
        [result setValue:[[self encapsulation] dictionary]forKey:@"encapsulation"];
    }
    if([self definition])
    {
        [result setValue:[self definition] forKey:@"definition"];
    }
    if([self source])
    {
        [result setValue:[self source] forKey:@"source"];
    }
    if([self templateType])
    {
        [result setValue:[self templateType] forKey:@"templateType"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.video = [[Video alloc]initWithDic:[dictionary objectForKey:@"video"]];
    self.audio = [[Audio alloc]initWithDic:[dictionary objectForKey:@"audio"]];
    self.encapsulation = [[Encapsulation alloc]initWithDic:[dictionary objectForKey:@"encapsulation"]];
    self.definition = [dictionary objectForKey:@"definition"];
    self.source = [dictionary objectForKey:@"source"];
    self.templateType = [dictionary objectForKey:@"templateType"];
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
}
 @end
@implementation UpdateTranscodeTemplateRequestObject
-(id) initWithName:(NSString*) name
      video:(Video*)video
      audio:(Audio*)audio
      encapsulation:(Encapsulation*)encapsulation
      definition:(NSString*)definition
      templateType:(NSString*)templateType { 
     self.name = name;               
     self.video = video;               
     self.audio = audio;               
     self.encapsulation = encapsulation;               
     self.definition = definition;               
     self.templateType = templateType;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self video])
    {
        [result setValue:[[self video] dictionary]forKey:@"video"];
    }
    if([self audio])
    {
        [result setValue:[[self audio] dictionary]forKey:@"audio"];
    }
    if([self encapsulation])
    {
        [result setValue:[[self encapsulation] dictionary]forKey:@"encapsulation"];
    }
    if([self definition])
    {
        [result setValue:[self definition] forKey:@"definition"];
    }
    if([self templateType])
    {
        [result setValue:[self templateType] forKey:@"templateType"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.name = [dictionary objectForKey:@"name"];
    self.video = [[Video alloc]initWithDic:[dictionary objectForKey:@"video"]];
    self.audio = [[Audio alloc]initWithDic:[dictionary objectForKey:@"audio"]];
    self.encapsulation = [[Encapsulation alloc]initWithDic:[dictionary objectForKey:@"encapsulation"]];
    self.definition = [dictionary objectForKey:@"definition"];
    self.templateType = [dictionary objectForKey:@"templateType"];
    return self;
}
 @end
@implementation CreateTranscodeTemplateRequestObject
-(id) initWithName:(NSString*) name
      video:(Video*)video
      audio:(Audio*)audio
      encapsulation:(Encapsulation*)encapsulation
      definition:(NSString*)definition
      templateType:(NSString*)templateType { 
     self.name = name;               
     self.video = video;               
     self.audio = audio;               
     self.encapsulation = encapsulation;               
     self.definition = definition;               
     self.templateType = templateType;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self video])
    {
        [result setValue:[[self video] dictionary]forKey:@"video"];
    }
    if([self audio])
    {
        [result setValue:[[self audio] dictionary]forKey:@"audio"];
    }
    if([self encapsulation])
    {
        [result setValue:[[self encapsulation] dictionary]forKey:@"encapsulation"];
    }
    if([self definition])
    {
        [result setValue:[self definition] forKey:@"definition"];
    }
    if([self templateType])
    {
        [result setValue:[self templateType] forKey:@"templateType"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.name = [dictionary objectForKey:@"name"];
    self.video = [[Video alloc]initWithDic:[dictionary objectForKey:@"video"]];
    self.audio = [[Audio alloc]initWithDic:[dictionary objectForKey:@"audio"]];
    self.encapsulation = [[Encapsulation alloc]initWithDic:[dictionary objectForKey:@"encapsulation"]];
    self.definition = [dictionary objectForKey:@"definition"];
    self.templateType = [dictionary objectForKey:@"templateType"];
    return self;
}
 @end
@implementation GetCategoryWithChildrenResultObject
-(id) initWithId:(NSNumber*) idValue
      name:(NSString*)name
      level:(NSNumber*)level
      descriptionValue:(NSString*)descriptionValue
      children:(NSArray<SubCategory*>*)children
      createTime:(NSString*)createTime
      updateTime:(NSString*)updateTime { 
     self.idValue = idValue;               
     self.name = name;               
     self.level = level;               
     self.descriptionValue = descriptionValue;               
     self.children = children;               
     self.createTime = createTime;               
     self.updateTime = updateTime;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self level])
    {
        [result setValue:[self level] forKey:@"level"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self children])
    {
        NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
        for (int i =0 ; i< [[self children] count]; i++) {
            SubCategory* item = [[self children] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"children"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.level = [dictionary objectForKey:@"level"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    NSArray* childrenArray = [dictionary objectForKey:@"children"];
    if(childrenArray&&![childrenArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [childrenArray count];i++)
        {
            SubCategory* item = [[SubCategory alloc]initWithDic:[childrenArray objectAtIndex:i]];
            if(item)
            {
                [propertyArray addObject:item];
            }
        }
        self.children = propertyArray;
    }
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
}
 @end
@implementation ListCategoriesResultObject
-(id) initWithPageNumber:(NSNumber*) pageNumber
      pageSize:(NSNumber*)pageSize
      totalElements:(NSNumber*)totalElements
      totalPages:(NSNumber*)totalPages
      content:(NSArray<CategoryObject*>*)content { 
     self.pageNumber = pageNumber;               
     self.pageSize = pageSize;               
     self.totalElements = totalElements;               
     self.totalPages = totalPages;               
     self.content = content;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self totalElements])
    {
        [result setValue:[self totalElements] forKey:@"totalElements"];
    }
    if([self totalPages])
    {
        [result setValue:[self totalPages] forKey:@"totalPages"];
    }
    if([self content])
    {
        NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
        for (int i =0 ; i< [[self content] count]; i++) {
            CategoryObject* item = [[self content] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"content"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    self.totalElements = [dictionary objectForKey:@"totalElements"];
    self.totalPages = [dictionary objectForKey:@"totalPages"];
    NSArray* contentArray = [dictionary objectForKey:@"content"];
    if(contentArray&&![contentArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [contentArray count];i++)
        {
            CategoryObject* item = [[CategoryObject alloc]initWithDic:[contentArray objectAtIndex:i]];
            if(item)
            {
                [propertyArray addObject:item];
            }
        }
        self.content = propertyArray;
    }
    return self;
}
 @end
@implementation CategoryTreeNode
-(id) initWithId:(NSNumber*) idValue
      name:(NSString*)name
      level:(NSNumber*)level
      descriptionValue:(NSString*)descriptionValue
      children:(NSArray<CategoryTreeNode*>*)children
      createTime:(NSString*)createTime
      updateTime:(NSString*)updateTime { 
     self.idValue = idValue;               
     self.name = name;               
     self.level = level;               
     self.descriptionValue = descriptionValue;               
     self.children = children;               
     self.createTime = createTime;               
     self.updateTime = updateTime;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self level])
    {
        [result setValue:[self level] forKey:@"level"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self children])
    {
        NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
        for (int i =0 ; i< [[self children] count]; i++) {
            CategoryTreeNode* item = [[self children] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"children"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.level = [dictionary objectForKey:@"level"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    NSArray* childrenArray = [dictionary objectForKey:@"children"];
    if(childrenArray&&![childrenArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [childrenArray count];i++)
        {
            CategoryTreeNode* item = [[CategoryTreeNode alloc]initWithDic:[childrenArray objectAtIndex:i]];
            if(item)
            {
                [propertyArray addObject:item];
            }
        }
        self.children = propertyArray;
    }
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
}
 @end
@implementation ListAllCategoriesResultObject
-(id) initWithFlatResult:(NSArray<CategoryObject*>*) flatResult
      treeResult:(CategoryTreeNode*)treeResult { 
     self.flatResult = flatResult;               
     self.treeResult = treeResult;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self flatResult])
    {
        NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
        for (int i =0 ; i< [[self flatResult] count]; i++) {
            CategoryObject* item = [[self flatResult] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"flatResult"];
    }
    if([self treeResult])
    {
        [result setValue:[[self treeResult] dictionary]forKey:@"treeResult"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* flatResultArray = [dictionary objectForKey:@"flatResult"];
    if(flatResultArray&&![flatResultArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [flatResultArray count];i++)
        {
            CategoryObject* item = [[CategoryObject alloc]initWithDic:[flatResultArray objectAtIndex:i]];
            if(item)
            {
                [propertyArray addObject:item];
            }
        }
        self.flatResult = propertyArray;
    }
    self.treeResult = [[CategoryTreeNode alloc]initWithDic:[dictionary objectForKey:@"treeResult"]];
    return self;
}
 @end
@implementation GetPlayInfoResultObject
-(id) initWithBaseInfo:(VideoBaseInfo*) baseInfo
      playInfoList:(NSArray<VideoPlayInfo*>*)playInfoList { 
     self.baseInfo = baseInfo;               
     self.playInfoList = playInfoList;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self baseInfo])
    {
        [result setValue:[[self baseInfo] dictionary]forKey:@"baseInfo"];
    }
    if([self playInfoList])
    {
        NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
        for (int i =0 ; i< [[self playInfoList] count]; i++) {
            VideoPlayInfo* item = [[self playInfoList] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"playInfoList"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.baseInfo = [[VideoBaseInfo alloc]initWithDic:[dictionary objectForKey:@"baseInfo"]];
    NSArray* playInfoListArray = [dictionary objectForKey:@"playInfoList"];
    if(playInfoListArray&&![playInfoListArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [playInfoListArray count];i++)
        {
            VideoPlayInfo* item = [[VideoPlayInfo alloc]initWithDic:[playInfoListArray objectAtIndex:i]];
            if(item)
            {
                [propertyArray addObject:item];
            }
        }
        self.playInfoList = propertyArray;
    }
    return self;
}
 @end
@implementation BatchUpdateVideosRequestObject
-(id) initWithBulkItems:(NSArray<BatchUpdateVideosBulkItem*>*) bulkItems { 
     self.bulkItems = bulkItems;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self bulkItems])
    {
        NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
        for (int i =0 ; i< [[self bulkItems] count]; i++) {
            BatchUpdateVideosBulkItem* item = [[self bulkItems] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"bulkItems"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* bulkItemsArray = [dictionary objectForKey:@"bulkItems"];
    if(bulkItemsArray&&![bulkItemsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [bulkItemsArray count];i++)
        {
            BatchUpdateVideosBulkItem* item = [[BatchUpdateVideosBulkItem alloc]initWithDic:[bulkItemsArray objectAtIndex:i]];
            if(item)
            {
                [propertyArray addObject:item];
            }
        }
        self.bulkItems = propertyArray;
    }
    return self;
}
 @end
@implementation VideoObject
-(id) initWithId:(NSString*) idValue
      name:(NSString*)name
      descriptionValue:(NSString*)descriptionValue
      coverUrl:(NSString*)coverUrl
      status:(NSString*)status
      fileSize:(NSNumber*)fileSize
      checksum:(NSString*)checksum
      duration:(NSNumber*)duration
      tags:(NSArray<NSString*>*)tags
      categoryId:(NSNumber*)categoryId
      categoryName:(NSString*)categoryName
      snapshots:(NSArray<Snapshot*>*)snapshots
      createTime:(NSString*)createTime
      updateTime:(NSString*)updateTime { 
     self.idValue = idValue;               
     self.name = name;               
     self.descriptionValue = descriptionValue;               
     self.coverUrl = coverUrl;               
     self.status = status;               
     self.fileSize = fileSize;               
     self.checksum = checksum;               
     self.duration = duration;               
     self.tags = tags;               
     self.categoryId = categoryId;               
     self.categoryName = categoryName;               
     self.snapshots = snapshots;               
     self.createTime = createTime;               
     self.updateTime = updateTime;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self idValue])
    {
        [result setValue:[self idValue] forKey:@"id"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    if([self descriptionValue])
    {
        [result setValue:[self descriptionValue] forKey:@"description"];
    }
    if([self coverUrl])
    {
        [result setValue:[self coverUrl] forKey:@"coverUrl"];
    }
    if([self status])
    {
        [result setValue:[self status] forKey:@"status"];
    }
    if([self fileSize])
    {
        [result setValue:[self fileSize] forKey:@"fileSize"];
    }
    if([self checksum])
    {
        [result setValue:[self checksum] forKey:@"checksum"];
    }
    if([self duration])
    {
        [result setValue:[self duration] forKey:@"duration"];
    }
    if([self tags])
    {
        [result setValue:[self tags] forKey:@"tags"];
    }
    if([self categoryId])
    {
        [result setValue:[self categoryId] forKey:@"categoryId"];
    }
    if([self categoryName])
    {
        [result setValue:[self categoryName] forKey:@"categoryName"];
    }
    if([self snapshots])
    {
        NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
        for (int i =0 ; i< [[self snapshots] count]; i++) {
            Snapshot* item = [[self snapshots] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"snapshots"];
    }
    if([self createTime])
    {
        [result setValue:[self createTime] forKey:@"createTime"];
    }
    if([self updateTime])
    {
        [result setValue:[self updateTime] forKey:@"updateTime"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.idValue = [dictionary objectForKey:@"id"];
    self.name = [dictionary objectForKey:@"name"];
    self.descriptionValue = [dictionary objectForKey:@"description"];
    self.coverUrl = [dictionary objectForKey:@"coverUrl"];
    self.status = [dictionary objectForKey:@"status"];
    self.fileSize = [dictionary objectForKey:@"fileSize"];
    self.checksum = [dictionary objectForKey:@"checksum"];
    self.duration = [dictionary objectForKey:@"duration"];
    self.tags = [dictionary objectForKey:@"tags"];
    self.categoryId = [dictionary objectForKey:@"categoryId"];
    self.categoryName = [dictionary objectForKey:@"categoryName"];
    NSArray* snapshotsArray = [dictionary objectForKey:@"snapshots"];
    if(snapshotsArray&&![snapshotsArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [snapshotsArray count];i++)
        {
            Snapshot* item = [[Snapshot alloc]initWithDic:[snapshotsArray objectAtIndex:i]];
            if(item)
            {
                [propertyArray addObject:item];
            }
        }
        self.snapshots = propertyArray;
    }
    self.createTime = [dictionary objectForKey:@"createTime"];
    self.updateTime = [dictionary objectForKey:@"updateTime"];
    return self;
}
 @end
@implementation ListVideosResultObject
-(id) initWithPageNumber:(NSNumber*) pageNumber
      pageSize:(NSNumber*)pageSize
      totalElements:(NSNumber*)totalElements
      totalPages:(NSNumber*)totalPages
      content:(NSArray<VideoObject*>*)content { 
     self.pageNumber = pageNumber;               
     self.pageSize = pageSize;               
     self.totalElements = totalElements;               
     self.totalPages = totalPages;               
     self.content = content;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self totalElements])
    {
        [result setValue:[self totalElements] forKey:@"totalElements"];
    }
    if([self totalPages])
    {
        [result setValue:[self totalPages] forKey:@"totalPages"];
    }
    if([self content])
    {
        NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
        for (int i =0 ; i< [[self content] count]; i++) {
            VideoObject* item = [[self content] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"content"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    self.totalElements = [dictionary objectForKey:@"totalElements"];
    self.totalPages = [dictionary objectForKey:@"totalPages"];
    NSArray* contentArray = [dictionary objectForKey:@"content"];
    if(contentArray&&![contentArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [contentArray count];i++)
        {
            VideoObject* item = [[VideoObject alloc]initWithDic:[contentArray objectAtIndex:i]];
            if(item)
            {
                [propertyArray addObject:item];
            }
        }
        self.content = propertyArray;
    }
    return self;
}
 @end
@implementation QueryStorageSizeResultObject
-(id) initWithData:(StorageSize*) data { 
     self.data = data;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self data])
    {
        [result setValue:[[self data] dictionary]forKey:@"data"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.data = [[StorageSize alloc]initWithDic:[dictionary objectForKey:@"data"]];
    return self;
}
 @end
@implementation ListWatermarksResultObject
-(id) initWithPageNumber:(NSNumber*) pageNumber
      pageSize:(NSNumber*)pageSize
      totalElements:(NSNumber*)totalElements
      totalPages:(NSNumber*)totalPages
      content:(NSArray<WatermarkObject*>*)content { 
     self.pageNumber = pageNumber;               
     self.pageSize = pageSize;               
     self.totalElements = totalElements;               
     self.totalPages = totalPages;               
     self.content = content;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self totalElements])
    {
        [result setValue:[self totalElements] forKey:@"totalElements"];
    }
    if([self totalPages])
    {
        [result setValue:[self totalPages] forKey:@"totalPages"];
    }
    if([self content])
    {
        NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
        for (int i =0 ; i< [[self content] count]; i++) {
            WatermarkObject* item = [[self content] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"content"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    self.totalElements = [dictionary objectForKey:@"totalElements"];
    self.totalPages = [dictionary objectForKey:@"totalPages"];
    NSArray* contentArray = [dictionary objectForKey:@"content"];
    if(contentArray&&![contentArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [contentArray count];i++)
        {
            WatermarkObject* item = [[WatermarkObject alloc]initWithDic:[contentArray objectAtIndex:i]];
            if(item)
            {
                [propertyArray addObject:item];
            }
        }
        self.content = propertyArray;
    }
    return self;
}
 @end
@implementation GetAllTypeRuleResultObject
-(id) initWithReferer:(GetRefererRuleResultObject*) referer
      url:(GetURLRuleResultObject*)url
      ip:(GetIPRuleResultObject*)ip { 
     self.referer = referer;               
     self.url = url;               
     self.ip = ip;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self referer])
    {
        [result setValue:[[self referer] dictionary]forKey:@"referer"];
    }
    if([self url])
    {
        [result setValue:[[self url] dictionary]forKey:@"url"];
    }
    if([self ip])
    {
        [result setValue:[[self ip] dictionary]forKey:@"ip"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.referer = [[GetRefererRuleResultObject alloc]initWithDic:[dictionary objectForKey:@"referer"]];
    self.url = [[GetURLRuleResultObject alloc]initWithDic:[dictionary objectForKey:@"url"]];
    self.ip = [[GetIPRuleResultObject alloc]initWithDic:[dictionary objectForKey:@"ip"]];
    return self;
}
 @end
@implementation ListTranscodeTemplatesResultObject
-(id) initWithPageNumber:(NSNumber*) pageNumber
      pageSize:(NSNumber*)pageSize
      totalElements:(NSNumber*)totalElements
      totalPages:(NSNumber*)totalPages
      content:(NSArray<TranscodeTemplateObject*>*)content { 
     self.pageNumber = pageNumber;               
     self.pageSize = pageSize;               
     self.totalElements = totalElements;               
     self.totalPages = totalPages;               
     self.content = content;               
    return self;
}

-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self totalElements])
    {
        [result setValue:[self totalElements] forKey:@"totalElements"];
    }
    if([self totalPages])
    {
        [result setValue:[self totalPages] forKey:@"totalPages"];
    }
    if([self content])
    {
        NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
        for (int i =0 ; i< [[self content] count]; i++) {
            TranscodeTemplateObject* item = [[self content] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"content"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    self.totalElements = [dictionary objectForKey:@"totalElements"];
    self.totalPages = [dictionary objectForKey:@"totalPages"];
    NSArray* contentArray = [dictionary objectForKey:@"content"];
    if(contentArray&&![contentArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [contentArray count];i++)
        {
            TranscodeTemplateObject* item = [[TranscodeTemplateObject alloc]initWithDic:[contentArray objectAtIndex:i]];
            if(item)
            {
                [propertyArray addObject:item];
            }
        }
        self.content = propertyArray;
    }
    return self;
}
 @end
 
 


